class TaskStepEntity {
  int code;
  TaskStepData data;
  String message;

  TaskStepEntity({this.code, this.data, this.message});

  TaskStepEntity.fromJson(Map<String, dynamic> json) {
    code = json['code'];
    data =
        json['data'] != null ? new TaskStepData.fromJson(json['data']) : null;
    message = json['message'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['code'] = this.code;
    if (this.data != null) {
      data['data'] = this.data.toJson();
    }
    data['message'] = this.message;
    return data;
  }
}

class TaskStepData {
  String merchantStore;
  int timeAudit;
  String description;
  int endtime;
  int remainTime;
  String type;
  String exampic;
  int downTimes;
  String finishedNum;
  int current;
  String deaddate;
  String timeCn;
  List<TaskStepDataSteparr> stepArr;
  int auditTime;
  String price;
  List<TaskStepDataAccountlist> accountList;
  String name;
  String priceGoods;
  String platname;
  String step;
  String id;
  int finishStep;
  String account;
  int status;
  String keywords;
  String sx;

  TaskStepData(
      {this.merchantStore,
      this.timeAudit,
      this.description,
      this.endtime,
      this.remainTime,
      this.type,
      this.exampic,
      this.downTimes,
      this.finishedNum,
      this.current,
      this.deaddate,
      this.timeCn,
      this.stepArr,
      this.auditTime,
      this.price,
      this.accountList,
      this.name,
      this.priceGoods,
      this.platname,
      this.step,
      this.id,
      this.finishStep,
      this.account,
      this.status,
      this.keywords,
      this.sx});

  TaskStepData.fromJson(Map<String, dynamic> json) {
    merchantStore = json['merchant_store'];
    timeAudit = json['timeAudit'];
    description = json['description'];
    endtime = json['endtime'];
    remainTime = json['remainTime'];
    type = json['type'];
    exampic = json['exampic'];
    downTimes = json['down_times'];
    finishedNum = json['finishedNum'];
    current = json['current'];
    deaddate = json['deaddate'];
    timeCn = json['timeCn'];
    if (json['stepArr'] != null) {
      stepArr = new List<TaskStepDataSteparr>();
      (json['stepArr'] as List).forEach((v) {
        stepArr.add(new TaskStepDataSteparr.fromJson(v));
      });
    }
    auditTime = json['auditTime'];
    price = json['price'];
    if (json['accountList'] != null) {
      accountList = new List<TaskStepDataAccountlist>();
      (json['accountList'] as List).forEach((v) {
        accountList.add(new TaskStepDataAccountlist.fromJson(v));
      });
    }
    name = json['name'];
    priceGoods = json['priceGoods'];
    platname = json['platname'];
    step = json['step'];
    id = json['id'];
    finishStep = int.parse("${json['finishStep']}");
    account = json['account'];
    status = json['status'];
    keywords = json['keywords'];
    sx = json['sx'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['merchant_store'] = this.merchantStore;
    data['timeAudit'] = this.timeAudit;
    data['description'] = this.description;
    data['endtime'] = this.endtime;
    data['remainTime'] = this.remainTime;
    data['type'] = this.type;
    data['exampic'] = this.exampic;
    data['down_times'] = this.downTimes;
    data['finishedNum'] = this.finishedNum;
    data['current'] = this.current;
    data['deaddate'] = this.deaddate;
    data['timeCn'] = this.timeCn;
    if (this.stepArr != null) {
      data['stepArr'] = this.stepArr.map((v) => v.toJson()).toList();
    }
    data['auditTime'] = this.auditTime;
    data['price'] = this.price;
    if (this.accountList != null) {
      data['accountList'] = this.accountList.map((v) => v.toJson()).toList();
    }
    data['name'] = this.name;
    data['priceGoods'] = this.priceGoods;
    data['platname'] = this.platname;
    data['step'] = this.step;
    data['id'] = this.id;
    data['finishStep'] = this.finishStep;
    data['account'] = this.account;
    data['status'] = this.status;
    data['keywords'] = this.keywords;
    data['sx'] = this.sx;
    return data;
  }
}

class TaskStepDataSteparr {
  TaskStepDataSteparrDetailarr detailArr;
  String name;
  String memo;

  TaskStepDataSteparr({this.detailArr, this.name, this.memo});

  TaskStepDataSteparr.fromJson(Map<String, dynamic> json) {
    detailArr = json['detailArr'] != null
        ? new TaskStepDataSteparrDetailarr.fromJson(json['detailArr'])
        : null;
    name = json['name'];
    memo = json['memo'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.detailArr != null) {
      data['detailArr'] = this.detailArr.toJson();
    }
    data['name'] = this.name;
    data['memo'] = this.memo;
    return data;
  }
}

class TaskStepDataSteparrDetailarr {
  List<TaskStepDataSteparrDetailarrEdit> edit;
  List<TaskStepDataSteparrDetailarrBrowse> browse;

  TaskStepDataSteparrDetailarr({this.edit, this.browse});

  TaskStepDataSteparrDetailarr.fromJson(Map<String, dynamic> json) {
    if (json['edit'] != null) {
      edit = new List<TaskStepDataSteparrDetailarrEdit>();
      (json['edit'] as List).forEach((v) {
        edit.add(new TaskStepDataSteparrDetailarrEdit.fromJson(v));
      });
    }
    if (json['browse'] != null) {
      browse = new List<TaskStepDataSteparrDetailarrBrowse>();
      (json['browse'] as List).forEach((v) {
        browse.add(new TaskStepDataSteparrDetailarrBrowse.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.edit != null) {
      data['edit'] = this.edit.map((v) => v.toJson()).toList();
    }
    if (this.browse != null) {
      data['browse'] = this.browse.map((v) => v.toJson()).toList();
    }
    return data;
  }
}

class TaskStepDataSteparrDetailarrEdit {
  int cateFlg;
  String name;
  String id;
  String value;
  String example;
  String wervalue;
  String usrtype;
  int check;
  String group;

  TaskStepDataSteparrDetailarrEdit(
      {this.cateFlg,
      this.name,
      this.id,
      this.value,
      this.example,
      this.wervalue,
      this.usrtype,
      this.check,
      this.group});

  TaskStepDataSteparrDetailarrEdit.fromJson(Map<String, dynamic> json) {
    cateFlg = json['cateFlg'];
    name = json['name'];
    id = json['id'];
    value = json['value'].toString();
    example = json['example'].toString();
    wervalue = json['wervalue'].toString();
    usrtype = json['usrtype'].toString();
    check = json['check'];
    group = json['group'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['cateFlg'] = this.cateFlg;
    data['name'] = this.name;
    data['id'] = this.id;
    data['value'] = this.value;
    data['example'] = this.example;
    data['wervalue'] = this.wervalue;
    data['usrtype'] = this.usrtype;
    return data;
  }
}

class TaskStepDataSteparrDetailarrBrowse {
  int cateFlg;
  String name;
  String id;
  String value;
  int usrtype;

  TaskStepDataSteparrDetailarrBrowse(
      {this.cateFlg, this.name, this.id, this.value, this.usrtype});

  TaskStepDataSteparrDetailarrBrowse.fromJson(Map<String, dynamic> json) {
    cateFlg = json['cateFlg'];
    name = json['name'];
    id = json['id'];
    value = json['value'];
    usrtype = json['usrtype'] == null ? 0 : int.parse("${json['usrtype']}");
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['cateFlg'] = this.cateFlg;
    data['name'] = this.name;
    data['id'] = this.id;
    data['value'] = this.value;
    data['usrtype'] = this.usrtype;
    return data;
  }
}

class TaskStepDataAccountlist {
  String text;
  int type;
  String value;

  TaskStepDataAccountlist({this.text, this.type, this.value});

  TaskStepDataAccountlist.fromJson(Map<String, dynamic> json) {
    text = json['text'];
    type = json['type'];
    value = json['value'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['text'] = this.text;
    data['type'] = this.type;
    data['value'] = this.value;
    return data;
  }
}
